package com.broada.apm.indicator.api;

import java.util.List;

import com.broada.apm.model.L7moduleMenu;
import com.broada.apm.model.L7moduleMenuitem;

public interface L7moduleMenuService {

	/**
	 * 根据协议号获取L7模块菜单
	 * @param moduleId
	 * @return
	 */
	public List<L7moduleMenu> getL7moduleMenuByProtocol(String moduleId);

	/**
	 * 根据菜单ID获取L7模块菜单项List<L7moduleMenuitem>
	 * @param menuId
	 * @return
	 */
	public List<L7moduleMenuitem> getL7moduleMenuitemByMenuId(int menuId);

	/**
	 * 根据菜单ID获取L7模块菜单L7moduleMenu
	 * @param menuId
	 * @return
	 */
	public L7moduleMenu getL7moduleMenuByMenuId(int menuId);

	/**
	 * 根据条件查询L7模块菜单
	 * @param l7moduleMenu
	 * @return
	 */
	public List<L7moduleMenu> getL7moduleMenu(L7moduleMenu l7moduleMenu);

	/**
	 * 新增L7模块菜单
	 * @param l7moduleMenu
	 */
	public void addL7moduleMenu(L7moduleMenu l7moduleMenu);

	/**
	 * 新增L7模块菜单项
	 * @param menuItem
	 */
	public void addL7moduleMenuitem(L7moduleMenuitem menuItem);
	
	/**
	 * 根据模块ID删除L7模块菜单
	 * @param moduleId
	 */
	public void deleteL7MenuByModuleId(String moduleId);
	
	/**
	 * 更新L7模块菜单
	 * @param l7moduleMenu
	 */
	public void updateL7moduleMenu(L7moduleMenu l7moduleMenu);
	
	/**
	 * 更新L7模块菜单项
	 * @param menuItem
	 */
	public void updateL7moduleMenuitem(L7moduleMenuitem menuItem);
}
